/*
 * XML Type:  BankRequestMessageSetV1
 * Namespace: http://ofx.net/types/2003/04
 * Java type: net.ofx.types.x2003.x04.BankRequestMessageSetV1
 *
 * Automatically generated - do not modify.
 */
package net.ofx.types.x2003.x04;


/**
 * An XML BankRequestMessageSetV1(@http://ofx.net/types/2003/04).
 *
 * This is a complex type.
 */
public interface BankRequestMessageSetV1 extends net.ofx.types.x2003.x04.AbstractRequestMessageSet
{
    public static final org.apache.xmlbeans.SchemaType type = (org.apache.xmlbeans.SchemaType)schema.system.s3A74FF4CC3627C5B0D40068015746F8A.TypeSystemHolder.typeSystem.resolveHandle("bankrequestmessagesetv1e16btype");
    
    /**
     * Gets array of all "STMTTRNRQ" elements
     */
    net.ofx.types.x2003.x04.StatementTransactionRequest[] getSTMTTRNRQArray();
    
    /**
     * Gets ith "STMTTRNRQ" element
     */
    net.ofx.types.x2003.x04.StatementTransactionRequest getSTMTTRNRQArray(int i);
    
    /**
     * Returns number of "STMTTRNRQ" element
     */
    int sizeOfSTMTTRNRQArray();
    
    /**
     * Sets array of all "STMTTRNRQ" element
     */
    void setSTMTTRNRQArray(net.ofx.types.x2003.x04.StatementTransactionRequest[] stmttrnrqArray);
    
    /**
     * Sets ith "STMTTRNRQ" element
     */
    void setSTMTTRNRQArray(int i, net.ofx.types.x2003.x04.StatementTransactionRequest stmttrnrq);
    
    /**
     * Inserts and returns a new empty value (as xml) as the ith "STMTTRNRQ" element
     */
    net.ofx.types.x2003.x04.StatementTransactionRequest insertNewSTMTTRNRQ(int i);
    
    /**
     * Appends and returns a new empty value (as xml) as the last "STMTTRNRQ" element
     */
    net.ofx.types.x2003.x04.StatementTransactionRequest addNewSTMTTRNRQ();
    
    /**
     * Removes the ith "STMTTRNRQ" element
     */
    void removeSTMTTRNRQ(int i);
    
    /**
     * Gets array of all "STMTENDTRNRQ" elements
     */
    net.ofx.types.x2003.x04.StatementEndTransactionRequest[] getSTMTENDTRNRQArray();
    
    /**
     * Gets ith "STMTENDTRNRQ" element
     */
    net.ofx.types.x2003.x04.StatementEndTransactionRequest getSTMTENDTRNRQArray(int i);
    
    /**
     * Returns number of "STMTENDTRNRQ" element
     */
    int sizeOfSTMTENDTRNRQArray();
    
    /**
     * Sets array of all "STMTENDTRNRQ" element
     */
    void setSTMTENDTRNRQArray(net.ofx.types.x2003.x04.StatementEndTransactionRequest[] stmtendtrnrqArray);
    
    /**
     * Sets ith "STMTENDTRNRQ" element
     */
    void setSTMTENDTRNRQArray(int i, net.ofx.types.x2003.x04.StatementEndTransactionRequest stmtendtrnrq);
    
    /**
     * Inserts and returns a new empty value (as xml) as the ith "STMTENDTRNRQ" element
     */
    net.ofx.types.x2003.x04.StatementEndTransactionRequest insertNewSTMTENDTRNRQ(int i);
    
    /**
     * Appends and returns a new empty value (as xml) as the last "STMTENDTRNRQ" element
     */
    net.ofx.types.x2003.x04.StatementEndTransactionRequest addNewSTMTENDTRNRQ();
    
    /**
     * Removes the ith "STMTENDTRNRQ" element
     */
    void removeSTMTENDTRNRQ(int i);
    
    /**
     * Gets array of all "INTRATRNRQ" elements
     */
    net.ofx.types.x2003.x04.IntraTransactionRequest[] getINTRATRNRQArray();
    
    /**
     * Gets ith "INTRATRNRQ" element
     */
    net.ofx.types.x2003.x04.IntraTransactionRequest getINTRATRNRQArray(int i);
    
    /**
     * Returns number of "INTRATRNRQ" element
     */
    int sizeOfINTRATRNRQArray();
    
    /**
     * Sets array of all "INTRATRNRQ" element
     */
    void setINTRATRNRQArray(net.ofx.types.x2003.x04.IntraTransactionRequest[] intratrnrqArray);
    
    /**
     * Sets ith "INTRATRNRQ" element
     */
    void setINTRATRNRQArray(int i, net.ofx.types.x2003.x04.IntraTransactionRequest intratrnrq);
    
    /**
     * Inserts and returns a new empty value (as xml) as the ith "INTRATRNRQ" element
     */
    net.ofx.types.x2003.x04.IntraTransactionRequest insertNewINTRATRNRQ(int i);
    
    /**
     * Appends and returns a new empty value (as xml) as the last "INTRATRNRQ" element
     */
    net.ofx.types.x2003.x04.IntraTransactionRequest addNewINTRATRNRQ();
    
    /**
     * Removes the ith "INTRATRNRQ" element
     */
    void removeINTRATRNRQ(int i);
    
    /**
     * Gets array of all "RECINTRATRNRQ" elements
     */
    net.ofx.types.x2003.x04.RecurringIntraTransactionRequest[] getRECINTRATRNRQArray();
    
    /**
     * Gets ith "RECINTRATRNRQ" element
     */
    net.ofx.types.x2003.x04.RecurringIntraTransactionRequest getRECINTRATRNRQArray(int i);
    
    /**
     * Returns number of "RECINTRATRNRQ" element
     */
    int sizeOfRECINTRATRNRQArray();
    
    /**
     * Sets array of all "RECINTRATRNRQ" element
     */
    void setRECINTRATRNRQArray(net.ofx.types.x2003.x04.RecurringIntraTransactionRequest[] recintratrnrqArray);
    
    /**
     * Sets ith "RECINTRATRNRQ" element
     */
    void setRECINTRATRNRQArray(int i, net.ofx.types.x2003.x04.RecurringIntraTransactionRequest recintratrnrq);
    
    /**
     * Inserts and returns a new empty value (as xml) as the ith "RECINTRATRNRQ" element
     */
    net.ofx.types.x2003.x04.RecurringIntraTransactionRequest insertNewRECINTRATRNRQ(int i);
    
    /**
     * Appends and returns a new empty value (as xml) as the last "RECINTRATRNRQ" element
     */
    net.ofx.types.x2003.x04.RecurringIntraTransactionRequest addNewRECINTRATRNRQ();
    
    /**
     * Removes the ith "RECINTRATRNRQ" element
     */
    void removeRECINTRATRNRQ(int i);
    
    /**
     * Gets array of all "STPCHKTRNRQ" elements
     */
    net.ofx.types.x2003.x04.StopCheckTransactionRequest[] getSTPCHKTRNRQArray();
    
    /**
     * Gets ith "STPCHKTRNRQ" element
     */
    net.ofx.types.x2003.x04.StopCheckTransactionRequest getSTPCHKTRNRQArray(int i);
    
    /**
     * Returns number of "STPCHKTRNRQ" element
     */
    int sizeOfSTPCHKTRNRQArray();
    
    /**
     * Sets array of all "STPCHKTRNRQ" element
     */
    void setSTPCHKTRNRQArray(net.ofx.types.x2003.x04.StopCheckTransactionRequest[] stpchktrnrqArray);
    
    /**
     * Sets ith "STPCHKTRNRQ" element
     */
    void setSTPCHKTRNRQArray(int i, net.ofx.types.x2003.x04.StopCheckTransactionRequest stpchktrnrq);
    
    /**
     * Inserts and returns a new empty value (as xml) as the ith "STPCHKTRNRQ" element
     */
    net.ofx.types.x2003.x04.StopCheckTransactionRequest insertNewSTPCHKTRNRQ(int i);
    
    /**
     * Appends and returns a new empty value (as xml) as the last "STPCHKTRNRQ" element
     */
    net.ofx.types.x2003.x04.StopCheckTransactionRequest addNewSTPCHKTRNRQ();
    
    /**
     * Removes the ith "STPCHKTRNRQ" element
     */
    void removeSTPCHKTRNRQ(int i);
    
    /**
     * Gets array of all "BANKMAILTRNRQ" elements
     */
    net.ofx.types.x2003.x04.BankMailTransactionRequest[] getBANKMAILTRNRQArray();
    
    /**
     * Gets ith "BANKMAILTRNRQ" element
     */
    net.ofx.types.x2003.x04.BankMailTransactionRequest getBANKMAILTRNRQArray(int i);
    
    /**
     * Returns number of "BANKMAILTRNRQ" element
     */
    int sizeOfBANKMAILTRNRQArray();
    
    /**
     * Sets array of all "BANKMAILTRNRQ" element
     */
    void setBANKMAILTRNRQArray(net.ofx.types.x2003.x04.BankMailTransactionRequest[] bankmailtrnrqArray);
    
    /**
     * Sets ith "BANKMAILTRNRQ" element
     */
    void setBANKMAILTRNRQArray(int i, net.ofx.types.x2003.x04.BankMailTransactionRequest bankmailtrnrq);
    
    /**
     * Inserts and returns a new empty value (as xml) as the ith "BANKMAILTRNRQ" element
     */
    net.ofx.types.x2003.x04.BankMailTransactionRequest insertNewBANKMAILTRNRQ(int i);
    
    /**
     * Appends and returns a new empty value (as xml) as the last "BANKMAILTRNRQ" element
     */
    net.ofx.types.x2003.x04.BankMailTransactionRequest addNewBANKMAILTRNRQ();
    
    /**
     * Removes the ith "BANKMAILTRNRQ" element
     */
    void removeBANKMAILTRNRQ(int i);
    
    /**
     * Gets array of all "BANKMAILSYNCRQ" elements
     */
    net.ofx.types.x2003.x04.BankMailSyncRequest[] getBANKMAILSYNCRQArray();
    
    /**
     * Gets ith "BANKMAILSYNCRQ" element
     */
    net.ofx.types.x2003.x04.BankMailSyncRequest getBANKMAILSYNCRQArray(int i);
    
    /**
     * Returns number of "BANKMAILSYNCRQ" element
     */
    int sizeOfBANKMAILSYNCRQArray();
    
    /**
     * Sets array of all "BANKMAILSYNCRQ" element
     */
    void setBANKMAILSYNCRQArray(net.ofx.types.x2003.x04.BankMailSyncRequest[] bankmailsyncrqArray);
    
    /**
     * Sets ith "BANKMAILSYNCRQ" element
     */
    void setBANKMAILSYNCRQArray(int i, net.ofx.types.x2003.x04.BankMailSyncRequest bankmailsyncrq);
    
    /**
     * Inserts and returns a new empty value (as xml) as the ith "BANKMAILSYNCRQ" element
     */
    net.ofx.types.x2003.x04.BankMailSyncRequest insertNewBANKMAILSYNCRQ(int i);
    
    /**
     * Appends and returns a new empty value (as xml) as the last "BANKMAILSYNCRQ" element
     */
    net.ofx.types.x2003.x04.BankMailSyncRequest addNewBANKMAILSYNCRQ();
    
    /**
     * Removes the ith "BANKMAILSYNCRQ" element
     */
    void removeBANKMAILSYNCRQ(int i);
    
    /**
     * Gets array of all "STPCHKSYNCRQ" elements
     */
    net.ofx.types.x2003.x04.StopCheckSyncRequest[] getSTPCHKSYNCRQArray();
    
    /**
     * Gets ith "STPCHKSYNCRQ" element
     */
    net.ofx.types.x2003.x04.StopCheckSyncRequest getSTPCHKSYNCRQArray(int i);
    
    /**
     * Returns number of "STPCHKSYNCRQ" element
     */
    int sizeOfSTPCHKSYNCRQArray();
    
    /**
     * Sets array of all "STPCHKSYNCRQ" element
     */
    void setSTPCHKSYNCRQArray(net.ofx.types.x2003.x04.StopCheckSyncRequest[] stpchksyncrqArray);
    
    /**
     * Sets ith "STPCHKSYNCRQ" element
     */
    void setSTPCHKSYNCRQArray(int i, net.ofx.types.x2003.x04.StopCheckSyncRequest stpchksyncrq);
    
    /**
     * Inserts and returns a new empty value (as xml) as the ith "STPCHKSYNCRQ" element
     */
    net.ofx.types.x2003.x04.StopCheckSyncRequest insertNewSTPCHKSYNCRQ(int i);
    
    /**
     * Appends and returns a new empty value (as xml) as the last "STPCHKSYNCRQ" element
     */
    net.ofx.types.x2003.x04.StopCheckSyncRequest addNewSTPCHKSYNCRQ();
    
    /**
     * Removes the ith "STPCHKSYNCRQ" element
     */
    void removeSTPCHKSYNCRQ(int i);
    
    /**
     * Gets array of all "INTRASYNCRQ" elements
     */
    net.ofx.types.x2003.x04.IntraSyncRequest[] getINTRASYNCRQArray();
    
    /**
     * Gets ith "INTRASYNCRQ" element
     */
    net.ofx.types.x2003.x04.IntraSyncRequest getINTRASYNCRQArray(int i);
    
    /**
     * Returns number of "INTRASYNCRQ" element
     */
    int sizeOfINTRASYNCRQArray();
    
    /**
     * Sets array of all "INTRASYNCRQ" element
     */
    void setINTRASYNCRQArray(net.ofx.types.x2003.x04.IntraSyncRequest[] intrasyncrqArray);
    
    /**
     * Sets ith "INTRASYNCRQ" element
     */
    void setINTRASYNCRQArray(int i, net.ofx.types.x2003.x04.IntraSyncRequest intrasyncrq);
    
    /**
     * Inserts and returns a new empty value (as xml) as the ith "INTRASYNCRQ" element
     */
    net.ofx.types.x2003.x04.IntraSyncRequest insertNewINTRASYNCRQ(int i);
    
    /**
     * Appends and returns a new empty value (as xml) as the last "INTRASYNCRQ" element
     */
    net.ofx.types.x2003.x04.IntraSyncRequest addNewINTRASYNCRQ();
    
    /**
     * Removes the ith "INTRASYNCRQ" element
     */
    void removeINTRASYNCRQ(int i);
    
    /**
     * Gets array of all "RECINTRASYNCRQ" elements
     */
    net.ofx.types.x2003.x04.RecurringIntraSyncRequest[] getRECINTRASYNCRQArray();
    
    /**
     * Gets ith "RECINTRASYNCRQ" element
     */
    net.ofx.types.x2003.x04.RecurringIntraSyncRequest getRECINTRASYNCRQArray(int i);
    
    /**
     * Returns number of "RECINTRASYNCRQ" element
     */
    int sizeOfRECINTRASYNCRQArray();
    
    /**
     * Sets array of all "RECINTRASYNCRQ" element
     */
    void setRECINTRASYNCRQArray(net.ofx.types.x2003.x04.RecurringIntraSyncRequest[] recintrasyncrqArray);
    
    /**
     * Sets ith "RECINTRASYNCRQ" element
     */
    void setRECINTRASYNCRQArray(int i, net.ofx.types.x2003.x04.RecurringIntraSyncRequest recintrasyncrq);
    
    /**
     * Inserts and returns a new empty value (as xml) as the ith "RECINTRASYNCRQ" element
     */
    net.ofx.types.x2003.x04.RecurringIntraSyncRequest insertNewRECINTRASYNCRQ(int i);
    
    /**
     * Appends and returns a new empty value (as xml) as the last "RECINTRASYNCRQ" element
     */
    net.ofx.types.x2003.x04.RecurringIntraSyncRequest addNewRECINTRASYNCRQ();
    
    /**
     * Removes the ith "RECINTRASYNCRQ" element
     */
    void removeRECINTRASYNCRQ(int i);
    
    /**
     * A factory class with static methods for creating instances
     * of this type.
     */
    
    public static final class Factory
    {
        public static net.ofx.types.x2003.x04.BankRequestMessageSetV1 newInstance() {
          return (net.ofx.types.x2003.x04.BankRequestMessageSetV1) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().newInstance( type, null ); }
        
        public static net.ofx.types.x2003.x04.BankRequestMessageSetV1 newInstance(org.apache.xmlbeans.XmlOptions options) {
          return (net.ofx.types.x2003.x04.BankRequestMessageSetV1) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().newInstance( type, options ); }
        
        public static net.ofx.types.x2003.x04.BankRequestMessageSetV1 parse(java.lang.String s) throws org.apache.xmlbeans.XmlException {
          return (net.ofx.types.x2003.x04.BankRequestMessageSetV1) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( s, type, null ); }
        
        public static net.ofx.types.x2003.x04.BankRequestMessageSetV1 parse(java.lang.String s, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException {
          return (net.ofx.types.x2003.x04.BankRequestMessageSetV1) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( s, type, options ); }
        
        public static net.ofx.types.x2003.x04.BankRequestMessageSetV1 parse(java.io.File f) throws org.apache.xmlbeans.XmlException, java.io.IOException {
          return (net.ofx.types.x2003.x04.BankRequestMessageSetV1) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( f, type, null ); }
        
        public static net.ofx.types.x2003.x04.BankRequestMessageSetV1 parse(java.io.File f, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, java.io.IOException {
          return (net.ofx.types.x2003.x04.BankRequestMessageSetV1) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( f, type, options ); }
        
        public static net.ofx.types.x2003.x04.BankRequestMessageSetV1 parse(java.net.URL u) throws org.apache.xmlbeans.XmlException, java.io.IOException {
          return (net.ofx.types.x2003.x04.BankRequestMessageSetV1) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( u, type, null ); }
        
        public static net.ofx.types.x2003.x04.BankRequestMessageSetV1 parse(java.net.URL u, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, java.io.IOException {
          return (net.ofx.types.x2003.x04.BankRequestMessageSetV1) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( u, type, options ); }
        
        public static net.ofx.types.x2003.x04.BankRequestMessageSetV1 parse(java.io.InputStream is) throws org.apache.xmlbeans.XmlException, java.io.IOException {
          return (net.ofx.types.x2003.x04.BankRequestMessageSetV1) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( is, type, null ); }
        
        public static net.ofx.types.x2003.x04.BankRequestMessageSetV1 parse(java.io.InputStream is, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, java.io.IOException {
          return (net.ofx.types.x2003.x04.BankRequestMessageSetV1) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( is, type, options ); }
        
        public static net.ofx.types.x2003.x04.BankRequestMessageSetV1 parse(java.io.Reader r) throws org.apache.xmlbeans.XmlException, java.io.IOException {
          return (net.ofx.types.x2003.x04.BankRequestMessageSetV1) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( r, type, null ); }
        
        public static net.ofx.types.x2003.x04.BankRequestMessageSetV1 parse(java.io.Reader r, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, java.io.IOException {
          return (net.ofx.types.x2003.x04.BankRequestMessageSetV1) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( r, type, options ); }
        
        public static net.ofx.types.x2003.x04.BankRequestMessageSetV1 parse(org.w3c.dom.Node node) throws org.apache.xmlbeans.XmlException {
          return (net.ofx.types.x2003.x04.BankRequestMessageSetV1) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( node, type, null ); }
        
        public static net.ofx.types.x2003.x04.BankRequestMessageSetV1 parse(org.w3c.dom.Node node, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException {
          return (net.ofx.types.x2003.x04.BankRequestMessageSetV1) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( node, type, options ); }
        
        public static net.ofx.types.x2003.x04.BankRequestMessageSetV1 parse(org.apache.xmlbeans.xml.stream.XMLInputStream xis) throws org.apache.xmlbeans.XmlException, org.apache.xmlbeans.xml.stream.XMLStreamException {
          return (net.ofx.types.x2003.x04.BankRequestMessageSetV1) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( xis, type, null ); }
        
        public static net.ofx.types.x2003.x04.BankRequestMessageSetV1 parse(org.apache.xmlbeans.xml.stream.XMLInputStream xis, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, org.apache.xmlbeans.xml.stream.XMLStreamException {
          return (net.ofx.types.x2003.x04.BankRequestMessageSetV1) org.apache.xmlbeans.XmlBeans.getContextTypeLoader().parse( xis, type, options ); }
        
        public static org.apache.xmlbeans.xml.stream.XMLInputStream newValidatingXMLInputStream(org.apache.xmlbeans.xml.stream.XMLInputStream xis) throws org.apache.xmlbeans.XmlException, org.apache.xmlbeans.xml.stream.XMLStreamException {
          return org.apache.xmlbeans.XmlBeans.getContextTypeLoader().newValidatingXMLInputStream( xis, type, null ); }
        
        public static org.apache.xmlbeans.xml.stream.XMLInputStream newValidatingXMLInputStream(org.apache.xmlbeans.xml.stream.XMLInputStream xis, org.apache.xmlbeans.XmlOptions options) throws org.apache.xmlbeans.XmlException, org.apache.xmlbeans.xml.stream.XMLStreamException {
          return org.apache.xmlbeans.XmlBeans.getContextTypeLoader().newValidatingXMLInputStream( xis, type, options ); }
        
        private Factory() { } // No instance of this class allowed
    }
}
